fix(capabilities): read host_compat from package.json after 2026.6 repackage#401
fix(capabilities): read host_compat from package.json after 2026.6 repackage#401minion1227 wants to merge 1 commit into
Conversation
…package the vouchdev#237 host-compat drift check read openclaw.compat.pluginApi from openclaw.plugin.json, but the 2026.6 loader repackage (47ac72f) moved that floor into the new loader-facing package.json — the current openclaw parser ignores openclaw.plugin.json's openclaw.* fields entirely. so _load_host_compat() read a key that no longer existed, host_compat silently degraded to {}, and the two drift tests failed on test. point _load_host_compat() and the drift tests at package.json, where the pluginApi floor now lives. the graceful-degradation and malformed-json tests move with it. no behaviour change beyond reading the right file.
|
Warning Review limit reached
Next review available in: 57 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
merge-order note: please merge this PR before #297 and #301. all three carry the same one-line host_compat fix (#297 and #301 have it folded in so their ci goes green against the current, still-broken |
|
Fix the conflict |
|
update — please disregard the earlier "merge this first" note.
|
|
@coderabbitai review |
✅ Action performedReview finished.
|
what changed
_load_host_compat()(and the #237 drift tests) now readopenclaw.compat.pluginApifrompackage.jsoninstead ofopenclaw.plugin.json.why
two PRs collided on
test. the #237 host-compat feature reads the pluginApi floor fromopenclaw.plugin.json. the 2026.6 openclaw repackage (47ac72f) then moved that floor into the new loader-facingpackage.json— its commit message is explicit that the current loader ignoresopenclaw.plugin.json'sopenclaw.*fields, sopackage.json→openclaw.compat.pluginApiis now the single source of truth.result on
testtoday:_load_host_compat()reads a key that no longer exists,host_compatsilently degrades to{}, and both drift tests fail:test_capabilities_host_compat_matches_openclaw_manifest→KeyError: 'openclaw'test_capabilities_host_compat_present_and_nonempty→assert 'openclaw' in {}this points the reader and the tests at
package.jsonwhere the floor now lives, restoring the drift check. graceful-degradation on a missing/malformed manifest is preserved (those tests move with it).what might break
nothing on disk or on the wire.
host_compatnow reports{"openclaw": {"pluginApi": ">=2026.6.0"}}again instead of{}. standalone-wheel installs withoutpackage.jsonstill degrade to{}(covered by test).tests
pytest tests/test_capabilities.py— 5/5 greenruff check src tests— cleanmypy src— cleanpytest(minus embeddings) — green